Sampling Conditions for Conforming Voronoi Meshing by the VoroCrust Algorithm

We study the problem of decomposing a volume bounded by a smooth surface into a collection of Voronoi cells. Unlike the dual problem of conforming Delaunay meshing, a principled solution to this problem for generic smooth surfaces remained elusive. VoroCrust leverages ideas from α-shapes and the power crust algorithm to produce unweighted Voronoi cells conforming to the surface, yielding the first provably-correct algorithm for this problem. Given an ϵ-sample on the bounding surface, with a weak σ-sparsity condition, we work with the balls of radius δ times the local feature size centered at each sample. The corners of this union of balls are the Voronoi sites, on both sides of the surface. The facets common to cells on opposite sides reconstruct the surface. For appropriate values of ϵ, σ and δ, we prove that the surface reconstruction is isotopic to the bounding surface. With the surface protected, the enclosed volume can be further decomposed into an isotopic volume mesh of fat Voronoi cells by generating a bounded number of sites in its interior. Compared to state-of-the-art methods based on clipping, VoroCrust cells are full Voronoi cells, with convexity and fatness guarantees. Compared to the power crust algorithm, VoroCrust cells are not filtered, are unweighted, and offer greater flexibility in meshing the enclosed volume by either structured grids or random samples.


Introduction
Mesh generation is a fundamental problem in computational geometry, geometric modeling, computer graphics, scientific computing and engineering simulations. There has been a growing interest in polyhedral meshes as an alternative to tetrahedral or hex-dominant meshes [48]. Polyhedra are less sensitive to stretching, which enables the representation of complex geometries without excessive refinement. In addition, polyhedral cells have more neighbors even at corners and boundaries, which offers better approximations of gradients and local flow distributions. Even compared to hexahedra, fewer polyhedral cells are needed to achieve a desired accuracy in certain applications. This can be very useful in several numerical methods [18], e.g., finite element [42], finite volume [39], virtual element [17] and Petrov-Galerkin [41]. In particular, the accuracy of a number of important solvers, e.g., the two-point flux approximation for conservation laws [39], greatly benefits from a conforming mesh which is orthogonal to its dual as naturally satisfied by Voronoi meshes.
VoroCrust is the first provably-correct algorithm for generating a volumetric Voronoi mesh whose boundary conforms to a smooth bounding surface, and with quality guarantees. A conforming volume mesh exhibits two desirable properties simultaneously: (1) a decomposition of the enclosed volume, and (2) a reconstruction of the bounding surface.
Conforming Delaunay meshing is well-studied [28], but Voronoi meshing is less mature. A common practical approach to polyhedral meshing is to dualize a tetrahedral mesh and clip, i.e., intersect and truncate, each cell by the bounding surface [35,43,47,52,55]. Unfortunately, clipping sacrifices the important properties of convexity and connectedness of cells [35], and may require costly constructive solid geometry operations. Restricting a Voronoi mesh to the surface before filtering its dual Delaunay facets is another approach [7,33,56], but filtering requires extra checks complicating its implementation and analysis; see also Figure 4. An intuitive approach is to locally mirror the Voronoi sites on either side of the surface [34,57], but we are not aware of any robust algorithms with approximation guarantees in this category. In contrast to these approaches, VoroCrust is distinguished by its simplicity and robustness at producing true unweighted Voronoi cells, leveraging established libraries, e.g., Voro++ [50], without modification or special cases.
VoroCrust can be viewed as a principled mirroring technique, which shares a number of key features with the power crust algorithm [13]. The power crust literature [7,8,10,12,13] developed a rich theory for surface approximation, namely the ϵ-sampling paradigm. Recall that the power crust algorithm uses an ϵ-sample of unweighted points to place weighted sites, so-called poles, near the medial axis of the underlying surface. The surface reconstruction is the collection of facets separating power cells of poles on the inside and outside of the enclosed volume.
Regarding samples and poles as primal-dual constructs, power crust performs a primal-dualdual-primal dance. VoroCrust makes a similar dance where weights are introduced differently; the samples are weighted to define unweighted sites tightly hugging the surface, with the reconstruction arising from their unweighted Voronoi diagram. The key advantage is the freedom to place more sites within the enclosed volume without disrupting the surface reconstruction. This added freedom is essential to the generation of graded meshes; a primary virtue of the proposed algorithm. Another virtue of the algorithm is that all samples appear as vertices in the resulting mesh. While the power crust algorithm does not guarantee that, some variations do so by means of filtering, at the price of the reconstruction no longer being the boundary of power cells [7,11,32].
The main construction underlying VoroCrust is a suitable union of balls centered on the bounding surface, as studied in the context of non-uniform approximations [26]. Unions of balls enjoy a wealth of results [15,24,37], which enable a variety of algorithms [13,23,30].
Similar constructions have been proposed for meshing problems in the applied sciences with heuristic extensions to 3D settings; see [40] and the references therein for a recent example. Aichholzer et al. [6] adopt closely related ideas to construct a union of surface balls using power crust poles for sizing estimation. However, their goal was to produce a coarse homeomorphic surface reconstruction. As in [6], the use of balls and α-shapes for surface reconstruction was explored earlier, e.g., ball-pivoting [19,54], but the connection to Voronoi meshing has been absent. In contrast, VoroCrust aims at a decomposition of the enclosed volume into fat Voronoi cells conforming to an isotopic surface reconstruction with quality guarantees.
In a previous paper [4], we explored the related problem of generating a Voronoi mesh that conforms to restricted classes of piecewise-linear complexes, with more challenging inputs left for future work. The approach adopted in [4] does not use a union of balls and relies instead on similar ideas to those proposed for conforming Delaunay meshing [29,45,49].
In this paper, we present a theoretical analysis of an abstract version of the VoroCrust algorithm. This establishes the quality and approximation guarantees of its output for volumes bounded by smooth surfaces. A description of the algorithm we analyze is given next; see Figure 1 for an illustration in 2D, and also our accompanying multimedia contribution [2].

1.
Take as input a sample on the surface ℳ bounding the volume .

2.
Define a ball B i centered at each sample p i , with a suitable radius r i , and let

5.
Compute the Voronoi diagram Vor and retain the cells with sites in ∪ as the volume mesh , where the facets between and yield a surface approximation ℳ.
In this paper, we assume is a bounded open subset of ℝ 3 , whose boundary ℳ is a closed, bounded and smooth surface. We further assume that is an ϵ-sample, with a weak σsparsity condition, and r i is set to δ times the local feature size at p i . For appropriate values of ϵ, σ and δ, we prove that and ℳ are isotopic to and ℳ, respectively. We also show that simple techniques for sampling within , e.g., octree refinement, guarantee an upper bound on the fatness of all cells in , as well as the number of samples.
Ultimately, we seek a conforming Voronoi mesher that can handle realistic inputs possibly containing sharp features, can estimate a sizing function and generate samples, and can guarantee the quality of the output mesh. This is the subject of a forthcoming paper [3] which describes the design and implementation of the complete VoroCrust algorithm.
The rest of the paper is organized as follows. Section 2 introduces the key definitions and notation used throughout the paper. Section 3 describes the placement of Voronoi seeds and basic properties of our construction assuming the union of surface balls satisfies a structural property. Section 4 proves this property holds and establishes the desired approximation guarantees under certain conditions on the input sample. Section 5 considers the generation of interior samples and bounds the fatness of all cells in the output mesh. Section 6 concludes the paper with pointers for future work. A number of proofs is deferred to the full version, available online [1]; see also the accompanying multimedia contribution in these proceedings [2].

Preliminaries
Throughout, standard general position assumptions [38] are made implicitly to simplify the presentation. We use d(p, q) to denote the Euclidean distance between two points p, q ∈ ℝ 3 , and c, r to denote the Euclidean ball centered at c ∈ ℝ 3 with radius r. We proceed to introduce the notation and recall the key definitions used throughout, following those in [13,26,37].

Sampling and approximation
We take as input a set of sample points ⊂ ℳ. A local scale or sizing is used to vary the sample density. Recall that the medial axis [13] of ℳ, denoted by , is the closure of the set of points in ℝ 3 with more than one closest point on ℳ. Hence, has one component inside and another outside. Each point of is the center of a medial ball tangent to ℳ at multiple points. Likewise, each point on ℳ has two tangent medial balls, not necessarily of the same size. The local feature size at x ∈ ℳ is defined as lfs x = inf a ∈ d x, a . The set is an ϵsample [9] if for all x ∈ ℳ there exists p ∈ such that d x, p ≤ ϵ ⋅ lfs x .
We desire an approximation of by a Voronoi mesh O, where the boundary ℳ of approximates ℳ. Recall that two topological spaces are homotopy-equivalent [26] if they have the same topology type. A stronger notion of topological equivalence is homeomorphism, which holds when there exists a continuous bijection with a continuous inverse from ℳ to ℳ. The notion of isotopy captures an even stronger type of equivalence for surfaces embedded in Euclidean space. Two surfaces ℳ, ℳ ⊂ ℝ 3 are isotopic [16,25] if there is a continuous mapping F: ℳ × 0, 1 ℝ 3 such that for each t ∈ [0, 1], F (·, t) is a homeomorphism from ℳ to ℳ, where F (·, 0) is the identity of ℳ and F ℳ, 1 = ℳ. To establish that two surfaces are geometrically close, the distance between each point on one surface and its closest point on the other surface is required. Such a bound is usually obtained in the course of proving isotopy.

Diagrams and triangulations
The set of points defining a Voronoi diagram are traditionally referred to as sites or seeds.
When approximating a manifold by a set of sample points of varying density, it is helpful to assign weights to the points reflective of their density. In particular, a point p i with weight w i , can be regarded as a ball B i with center p i and radius r i = w i .
Recall that the power distance [37] between two points p i , p j with weights w i , w j is π(p i , p j ) = d(p i , p j ) 2 −w i −w j . Unless otherwise noted, points are unweighted, having weight equal to zero. There is a natural geometric interpretation of the weight: all points q on the boundary of B i have π(p i , q) = 0, inside π(p i , q) < 0 and outside π(p i , q) > 0. Given a set of weighted points , this metric gives rise to a natural decomposition of ℝ 3 into the power cells The nerve [37] of a collection of sets is defined as = X ⊆ | ∩ T ≠ ϕ . Observe that is an abstract simplicial complex because X ∈ and Y ⊆ X imply Y ∈ . With that, we obtain the weighted Delaunay triangulation, or regular triangulation, as wDel = wVor . Alternatively, wDel can be defined directly as follows. A subset T ⊂ ℝ d , with d ≤ 3 and |T| ≤ d+1 defines a d-simplex σ T . Recall that the orthocenter [27] of σ T , denoted by z T , is the unique point q ∈ ℝ d such that π(p i , z T ) = π(p j , z T ) for all p i , p j ∈ T; the orthoradius of σ T is equal to π(p, z T ) for any p ∈ T. The Delaunay condition defines wDel as the set of tetrahedra σ T with an empty orthosphere, meaning π(p i , z T ) ≤ π(p j , z T ) for all p i ∈ T and p j ∈ \T, where wDel includes all faces of σ T .
There is a natural duality between wDel and wVor . For a tetrahedron σ T , the definition of z T immediately implies z T is a power vertex in wVor . Similarly, for each k-face σ S of σ T ∈ wDel with S ⊆ T and k + 1 = |S|, there exists a dual (3 − k)-face σ S ′ in wVor realized as ∩ p ∈ S V p . When is unweighted, the same definitions yield the standard (unweighted) Voronoi diagram Vor and its dual Delaunay triangulation Del .

Unions of balls
Let ℬ denote the set of balls corresponding to a set of weighted points and define the union of balls as ∪ ℬ. It is quite useful to capture the structure of using a combinatorial representation like a simplicial complex [36,37]. Let f i denote V i ∩ ∂B i and ℱ the collection Consider also the decomposition of by the cells of wVor To see why is relevant, consider its underlying space; we create a collection containing the convex hull of each simplex in and define the weighted α-shape as the union of this collection. It turns out that the simplices σ T ∈ contained in ∂ are dual to the faces of T q |, witnesses the existence of σ T q in ; the k-simplex σ T q is said to be exposed and ∂ can be defined directly as the collection of all exposed simplices [36]. In particular, the corners of ∂ correspond to the facets of ∂ . Moreover, is homotopy-equivalent to [37].
The union of balls defined using an ϵ-sampling guarantees the approximation of the manifold under suitable conditions on the sampling. Following earlier results on uniform sampling [46], an extension to non-uniform sampling establishes sampling conditions for the isotopic approximation of hypersurfaces and medial axis reconstruction [26].

Seed placement and surface reconstruction
We determine the location of Voronoi seeds using the union of balls . The correctness of our reconstruction depends crucially on how sample balls ℬ overlap. Assuming a certain structural property on , the surface reconstruction is embedded in the dual shape .

Seeds and guides
Central to the method and analysis are triplets of sample spheres, i.e., boundaries of sample balls, corresponding to a guide triangle in wDel . The sample spheres associated with the vertices of a guide triangle intersect contributing a pair of guide points. The reconstruction consists of Voronoi facets, most of which are guide triangles.
When a triplet of spheres ∂B i , ∂B j , ∂B k intersect at exactly two points, the intersection points are denoted by g i jk = g i jk , g i jk and called a pair of guide points or guides; see Figure 2a.
The associated guide triangle t ijk is dual to g i jk . We use arrows to distinguish guides on different sides of the manifold with the upper guide g ↑ lying outside and the lower guide g ↓ lying inside. We refer to the edges of guide triangles as guide edges e i j = p i p j . A guide edge e ij is associated with a dual guide circle C ij = ∂B i ∩ ∂B j , as in Figure 2a.
The Voronoi seeds in ∪ are chosen as the subset of guide points that lie on ∂U. A guide point g which is not interior to any sample ball is uncovered and included as a seed s into ; covered guides are not. We denote uncovered guides by s and covered guides by g, whenever coverage is known and important. If only one guide point in a pair is covered, then we say the guide pair is half-covered. If both guides in a pair are covered, they are ignored. Let i = ∩ ∂B i denote the seeds on sample sphere ∂B i .
As each guide triangle t ijk is associated with at least one dual seed s ijk , the seed witnesses its inclusion in and t ijk is exposed. Hence, t ijk belongs to ∂ as well. When such t ijk is dual to a single seeds s ijk it bounds the interior of , i.e., it is a face of a regular component of ; in the simplest and most common case, t ijk is a facet of a tetrahedron as shown in Figure 3b.
When t ijk is dual to a pair of seeds s i jk , it does not bound the interior of and is called a singular face of ∂ . All singular faces of ∂ appear in the reconstructed surface.

Disk caps
We describe the structural property required on along with the consequences exploited by VoroCrust for surface reconstruction. This is partially motivated by the requirement that all sample points on the surface appear as vertices in the output Voronoi mesh.
We define the subset of ∂B i inside other balls as the medial band and say it is covered. Let the caps K i and K i be the complement of the medial band in the interior and exterior of , respectively. Letting n p i be the normal line through p i perpendicular to ℳ, the two intersection points n p i ∩ ∂B i are called the poles of B i . See Figure 3a.
We require that satisfies the following structural property: each ∂B i has disk caps, meaning the medial band is a topological annulus and the two caps contain the poles and are topological disks. In other words, each B i contributes one connected component to each side of ∂U. As shown in Figure 3a, all seeds in i and i lie on ∂K i and ∂K i , respectively, along the arcs where other sample balls intersect ∂B i . In Section 4, we establish sufficient sampling conditions to ensure satisfies this property. In particular, we will show that both poles of each B i lie on ∂ .
The importance of disk caps is made clear by the following observation. The requirement that all sample points appear as Voronoi vertices in ℳ follows as a corollary.
Observation 1 (Three upper/lower seeds). If ∂B i has disk caps, then each of ∂K i and ∂K i has at least three seeds and the seeds on ∂B i are not all coplanar.
Proof. Every sphere S j ≠ i covers strictly less than one hemisphere of ∂B i because the poles are uncovered. Hence, each cap is composed of at least three arcs connecting at least three upper seeds i ⊂ ∂K i and three lower seeds i ⊂ ∂K i . Further, any hemisphere through the poles contains at least one upper and one lower seed. It follows that the set of seeds i = i ∪ i is not coplanar.
Corollary 2 (Sample reconstruction). If ∂B i has disk caps, then p i is a vertex in ℳ.
Proof. By Observation 1, the sample is equidistant to at least four seeds which are not all coplanar. It follows that the sample appears as a vertex in the Voronoi diagram and not in the relative interior of a facet or an edge. Being a common vertex to at least one interior and one exterior Voronoi seed, VoroCrust retains this vertex in its output reconstruction.

Sandwiching the reconstruction in the dual shape of
Triangulations of smooth surfaces embedded in ℝ 3 can have half-covered guides pairs, with one guide covered by the ball of a fourth sample not in the guide triangle dual to the guide pair. The tetrahedron formed by the three samples of the guide triangle plus the fourth covering sample is a sliver, i.e., the four samples lie almost uniformly around the equator of a sphere. In this case we do not reconstruct the guide triangle, and also do not reconstruct some guide edges. We show that the reconstructed surface ℳ lies entirely within the region of space bounded by guide triangles, i.e., the α-shape of , as stated in the following theorem.
The simple case of a single isolated sliver tetrahedron is illustrated in Figures 3b, 4 and 2b. A sliver has a pair of lower guide triangles and a pair of upper guide triangles. For instance, t 124 and t 234 are the pair of upper triangles in Figure 3b. In such a tetrahedron, there is an edge between each pair of samples corresponding to a non-empty circle of intersection between sample balls, like the circles in Figure 2a. For this circle, the arcs covered by the two other sample balls of the sliver overlap, so each of these balls contributes exactly one uncovered seed, rather than two. In this way the upper guides for the upper triangles are uncovered, but their lower guides are covered; also only the lower guides of the lower triangles are uncovered. The proof of Theorem 3 follows by analyzing the Voronoi cells of the seed points located on the overlapping sample balls and is deferred to Appendix A [1]. Alternatively, Theorem 3 can be seen as a consequence of Theorem 2 in [15].

Sampling conditions and approximation guarantees
We take as input a set of points sampled from the bounding surface ℳ such that is an ϵsample, with ϵ ≤ 1/500. We require that satisfies the following sparsity condition: for any two points p i , p j ∈ P, lfs p i ≥ lfs p j d p i , p j ≥ σϵlfs p j , with σ ≥ 3/4.
Such a sampling can be obtained by known algorithms. Given a suitable representation of ℳ, the algorithm in [21] computes a loose ϵ′-sample E which is a ϵ′(1+8.5ϵ′)-sample.
We start by adapting Theorem 6.2 and Lemma 6.4 from [26] to the setting just described.
For x ∈ ℝ 3 \M, let Γ x = d x, x /lfs x , where x is the closest point to x on ℳ.

1.
ℳ is a deformation retract of ,
Furthermore, we require that each ball B i ∈ ℬ contributes one facet to each side of ∂ . Our sampling conditions ensure that both poles are outside any ball B j ∈ ℬ.
Theorem 4 together with Theorem 5 imply that each ∂B i is decomposed into a covered region ∂B i ∩ ∪ j ≠ i B j , the medial band, and two uncovered caps ∂B i \ ∪ j ≠ i B j , each containing one pole. Recalling that seeds arise as pairs of intersection points between the boundaries of such balls, we show that seeds can be classified correctly as either inside or outside ℳ.

Corollary 6.
If a seed pair lies on the same side of ℳ, then at least one seed is covered.
Proof. Fix such a seed pair ∂B i ∩ ∂B j ∩ ∂B k and recall that ℳ ∩ ∂B i is contained in the medial band on ∂B i . Now, assume for contradiction that both seeds are uncovered and lie on the same side of ℳ. It follows that B j ∩ B k intersects B i away from its medial band, a contradiction to Theorem 4.
Theorem 4 guarantees that the medial band of B i is a superset of Γ −1 0, a′ ∩ ∂B i , which means that all seeds s ijk are at least a′lfs s i jk away from ℳ. It will be useful to bound the elevation of such seeds above T p i , the tangent plane to ℳ at p i . Clearly, the seed is no farther than δlfs(p j ) from any vertex of t ijk and the orthoradius of t ijk cannot be bigger than this distance.
Recall that the weight w i associated with p i is δ 2 lfs(p i ) 2 . We shift the weights of all the vertices of t ijk by the lowest weight w i , which does not change the orthocenter. With that w j − w i = δ 2 lfs p j 2 − lfs p i 2 ≤ δ 2 lfs p i 2 1 + κδ 2 − 1 = κδ 3 lfs p i 2 κδ + 2 . On the other hand, sparsity ensures that the closest vertex in t ijk to p j is at distance at least N p j ≥ σϵlfs p j ≥ σϵ 1 − κδ lfs p i . Ensuring 3 2 + κδ / σ 2 ϵ 2 1 − κδ 2 ≤ 1/4 suffices to bound the circumradius of t ijk by c rad = 1/ 1 − 4α 2 times its orthoradius, as required by Claim 4 in [27]. Substituting δ = 2ϵ and σ ≥ 3/4 we get α 2 ≤ 78.97ϵ, which corresponds to c rad < 1.37. It follows that the circumradius is at most c rad δlfs p j ≤ c rad 1 + κδ δlfs p i < 1.38δlfs p i .
For the second statement, observe that lfs p i ≥ 1 − κδ lfs p j and the sparsity condition ensures that the shortest edge length is at least σϵlfs p i ≥ σϵ 1 − κδ lfs p j . It follows that the circumradius is at most δc rad σϵ 1 − κδ < 3.68 times the length of any edge of t ijk .
Given the bound on the circumradii, we are able to bound the deviation of normals.

Lemma 10.
If t ijk is a guide triangle, then (1) ∠ a n p i , n p j ≤ η s δ < 0.47 ∘ , with η s < 2.03, and (2) ∠ a n t , n p i ≤ η t δ < 1.52 ∘ , with η t < 6.6, where n p i is the line normal to ℳ at p i and n t is the normal to t ijk . In particular, t ijk makes an angle at most η t δ with T p i .

Proof. Claim 8 implies d(p i , p j ) ≤ κδlfs(p i ) and (1) follows from the Normal Variation
Lemma [14] with ρ = κδ < 1/3 yielding ∠ a n p i , n p j ≤ κδ/ 1 − κδ . Letting R t denote the circumradius of t, Theorem 9 implies that the R t ≤ ϱ f ⋅ δlfs p i ≤ lfs p i / 2 and the Triangle Normal Lemma [31] implies ∠ a n p * , n t < 4.57δ < 1.05 ∘ , where p * is the vertex of t subtending a maximal angle in t. Hence, ∠ a n p i , n t ≤ ∠ a n p i , n p * + ∠ a n p * , n t .
Towards establishing homeomorphism, the next lemma on the monotonicity of distance to the nearest seed is critical. First, we show that the nearest seeds to any surface point x ∈ ℳ are generated by nearby samples.

Lemma 11.
The nearest seed to x ∈ ℳ lies on some ∂B i where d x, p i ≤ 5.03 ⋅ ϵl f s x .
Consequently, d x, p i ≤ 5.08 ⋅ ϵl f s p i .

Proof.
In an ϵ-sampling, there exists a p a such that d(x, p a ) ≤ ϵlfs(x), where lfs(p a ) ≤ (1 + ϵ)lfs(x). The sampling conditions also guarantee that there exists at least one seed s a on ∂B a .
By the triangle inequality, we get that d x, s a ≤ d x, p a + d p a , s a ≤ ϵlfs x + δlfs p a ≤ ϵ 1 + 2 1 + ϵ lfs x = ϵ 2ϵ + 3 lfs x .
We aim to bound ℓ to ensure ∀p i s.t. d x, p i = ⋅ ϵlfs x , the nearest seed to x cannot lie on B i . Note that in this case, 1 − ϵ lfs x ≤ lfs p i ≤ 1 + ϵ lfs x . Let s i be any seed on B i . It Setting ϵ 1 − 2ϵ − 2 lfs x ≥ ϵ 2ϵ + 3 lfs x suffices to ensure d x, s i ≥ d x, s a , and we get ≥ 2ϵ + 5 / 1 − 2ϵ . Conversely, if the nearest seed to x lies on B i , it must be case that d x, p i ≤ ϵlfs x . We verify that ϵ = ϵ 2ϵ + 5 / 1 − 2ϵ < 1 for any ϵ < 0.13. It follows that d x, p j ≤ ϵ/ 1 − ϵ lfs p i .

Lemma 12.
For any normal segment N x issued from x ∈ ℳ, the distance to is either strictly increasing or strictly decreasing along Γ −1 0, 0.96ϵ ∩ N x . The same holds for .

Proof.
Let n x be the outward normal and T x be the tangent plane to ℳ at x. By Theorem 11, the nearest seeds to x are generated by nearby samples. Fix one such nearby sample p i . For all possible locations of a seed s ∈ ∩ ∂B i , we will show a sufficiently large lower bound on s − s″, n x , where s′′ the projection of s onto T x .
Take lfs(p i ) = 1 and let B s = c, 1 be the tangent ball to ℳ at p i with s ∈ B s . Let A be the plane containing {p i , s, x}. Assume in the worst case that A ⊥ T p i and x is as far as possible from p i on ∂B s ∩ T p i . By Theorem 11, d(p i , x) ≤ 5.08ϵ and it follows that θ x = ∠ n x , n p i ≤ 5.08ϵ/ 1 − 5.08ϵ ≤ 5.14ϵ. This means that T x is confined within a (π/2 − θ x )cocone centered at x. Assume in the worst case that n x is parallel to A and T x is tilted to minimize d(s, s′′); see Figure 5b.
Let T x ′ be a translation of T x such that p i ∈ T x ′ and denote by x′ and s′ the projections of x Moreover, the restriction of the mapping π to ℳ is a homeomorphism and ℳ and ℳ are ambient isotopic. Consequently, is ambient isotopic to as well.
Proof. Fix a sample p i ∈ and a surface point x ∈ ℳ ∩ B i . We consider two cocones centered at x: a p-cocone contains all nearby surface points and a q-cocone contains all guide triangles incident at p i . By Theorem 3, all reconstruction facets generated by seeds on B i are sandwiched in the q-cocone.
Theorem 10 readily provides a bound on the q-cocone angle as γ ≤ η t δ. In addition, since d(p i , x) ≤ δlfs(p i ), we can bound the p-cocone angle as θ ≤ 2 sin −1 (δ/2) by Lemma 2 in [7]. We utilize a mixed pq-cocone with angle ω = γ/2 + θ/2, obtained by gluing the lower half of the p-cocone with the upper half of the q-cocone.
Let q ∈ ℳ and consider its closest point x ∈ ℳ. Again, fix p i ∈ such that x ∈ B i ; see Figure 5c. By sandwiching, we know that any ray through q intersects at least one guide triangle, in some point y, after passing through x. Let us assume the worst case that y lies on the upper boundary of the pq-cocone. Then, d q, x ≤ d y, y′ = h = δsin ω lfs p i , where y′ is the closest point on the lower boundary of the pq-cocone point to q. We also have that, d p i , x ≤ cos ω δlfs p i , and since lfs is 1-Lipschitz, lfs p i ≤ lfs x / 1 − δ . Simplifying, we With d(q, x) ≤ 0.55 lfs(x), Theorem 12 shows that the normal line from any p ∈ ℳ intersects ℳ exactly once close to the surface. It follows that for every point x ∈ ℳ with closest point q ∈ ℳ, we have d x, q ≤ d x, q′ where q′ ∈ ℳ with x its closest point in ℳ. Hence, d x, q ≤ h t ϵ 2 lfs x as well.
Building upon Theorem 12, as a point moves along the normal line at x, it is either the case that the distance to is decreasing while the distance to is increasing or the other way around. It follows that these two distances become equal at exactly one point on the Voronoi facet above or below x separating some seed s ∈ from another seed s ∈ . Hence, the restriction of the mapping π to ℳ is a homeomorphism.
This shows that ℳ and ℳ homeomorphic. Recall that Theorem 4(3) implies is a topological thickening [25] of ℳ. In addition, Theorem 3 guarantees that ℳ is embedded in the interior of , such that it separates the two surfaces comprising ∂ . These three properties imply ℳ is isotopic to ℳ in by virtue of Theorem 2.1 in [25]. Finally, as ℳ is the boundary of by definition, it follows that is isotopic to as well.

Quality guarantees and output size
We establish a number of quality guarantees on the output mesh. The main result is an upper bound on the fatness of all Voronoi cell. See Appendix B for the proofs [1].
Recall that fatness is the outradius to inradius ratio, where the outradius is the radius of the smallest enclosing ball, and the inradius is the radius of the largest enclosed ball. The good quality of guide triangles allows us to bound the inradius of Voronoi cells.
Observe that a guide triangle is contained in the Voronoi cell of its seed, even when one of the guides is covered. Hence, the tetrahedron formed by the triangle together with its seed lies inside the cell, and the cell inradius is at least the tetrahedron inradius. To get an upper bound on cell outradii, we must first generate seeds interior to . We consider a simple algorithm for generating based on a standard octree over . For sizing, we extend lfs beyond ℳ, using the point-wise maximal 1-Lipschitz extension lfs x = inf p ∈ ℳ lfs p + d x, p [44]. An octree box □ is refined if the length of its diagonal is greater than 2δ · lfs(c), where c is the center of □. After refinement terminates, we add an interior seed at the center of each empty box, and do nothing with boxes containing one or more guide seeds. Applying this scheme, we obtain the following.

Lemma 17. The fatness of boundary cells is at most
As the integral of lfs −3 is bounded over a single cell, it effectively counts the seeds.

Conclusions
We have analyzed an abstract version of the VoroCrust algorithm for volumes bounded by smooth surfaces. We established several guarantees on its output, provided the input samples satisfy certain conditions. In particular, the reconstruction is isotopic to the underlying surface and all 3D Voronoi cells have bounded fatness, i.e., outradius to inradius ratio. The triangular faces of the reconstruction have bounded angles and edge-length ratios, except perhaps in the presence of slivers. In a forthcoming paper [3], we describe the design and implementation of the complete VoroCrust algorithm, which generates conforming Voronoi meshes of realistic models, possibly containing sharp features, and produces samples that follow a natural sizing function and ensure output quality.
For future work, it would be interesting to ensure both guides are uncovered, or both covered. The significance would be that no tetrahedral slivers arise and no Steiner points are introduced. Further, the surface reconstruction would be composed entirely of guide triangles, so it would be easy to show that triangle normals converge to surface normals as sample density increases. Alternatively, where Steiner points are introduced on the surface, it would be helpful to have conditions that guaranteed the triangles containing Steiner points have good quality. In addition, the minimum edge length in a Voronoi cell can be a limiting factor in certain numerical solvers. Post-processing by mesh optimization techniques [5,53] can help eliminate short Voronoi edges away from the surface. Finally, we expect that the abstract algorithm analyzed in this paper can be extended to higher dimensions.

Supplementary Material
Refer to Web version on PubMed Central for supplementary material.  Voronoi facets dual to magenta edges are in the reconstructed surface; those dual to green and blue edges are not. n is the circumcenter of τ s and appears as a Voronoi vertex in Vor and a Steiner vertex in the surface reconstruction. In general, n is not the orthocenter of the sliver τ p .